/* === Thème Blue W3.CSS === */
.w3-theme-l5 {color:#000 !important; background-color:#eef4fb !important}
.w3-theme-l4 {color:#000 !important; background-color:#d7e6f6 !important}
.w3-theme-l3 {color:#000 !important; background-color:#afcce9 !important}
.w3-theme-l2 {color:#fff !important; background-color:#86b3eb !important}
.w3-theme-l1 {color:#fff !important; background-color:#5d99df !important}
.w3-theme-d1 {color:#fff !important; background-color:#3674c9 !important}
.w3-theme-d2 {color:#fff !important; background-color:#3066b3 !important}
.w3-theme-d3 {color:#fff !important; background-color:#2a589c !important}
.w3-theme-d4 {color:#fff !important; background-color:#244a85 !important}
.w3-theme-d5 {color:#fff !important; background-color:#1e3c6e !important}
.w3-theme-light {color:#000 !important; background-color:#eef4fb !important}
.w3-theme-dark {color:#fff !important; background-color:#1e3c6e !important}
.w3-theme-action {color:#fff !important; background-color:#1e3c6e !important}
.w3-theme {color:#fff !important; background-color:#3b82c4 !important}
.w3-text-theme {color:#3b82c4 !important}
.w3-border-theme {border-color:#3b82c4 !important}

/* === Animation de chargement (Gauche -> Droite) === */
.page-transition {
    animation: slideInFromLeft 0.4s ease-out forwards;
}
@keyframes slideInFromLeft {
    0% { transform: translateX(-30px); opacity: 0; }
    100% { transform: translateX(0); opacity: 1; }
}

/* === Hamburger Animation === */
.menu-icon {
    width: 30px;
    height: 22px;
    position: relative;
    margin: 0 auto;
    transform: rotate(0deg);
    transition: .5s ease-in-out;
    cursor: pointer;
}
.menu-icon span {
    display: block;
    position: absolute;
    height: 4px;
    width: 100%;
    background: #fff;
    border-radius: 2px;
    opacity: 1;
    left: 0;
    transform: rotate(0deg);
    transition: .25s ease-in-out;
}
.menu-icon span:nth-child(1) { top: 0px; transform-origin: left center; }
.menu-icon span:nth-child(2) { top: 9px; transform-origin: left center; }
.menu-icon span:nth-child(3) { top: 18px; transform-origin: left center; }
.menu-icon.open span:nth-child(1) { transform: rotate(45deg); top: -3px; left: 4px; }
.menu-icon.open span:nth-child(2) { width: 0%; opacity: 0; }
.menu-icon.open span:nth-child(3) { transform: rotate(-45deg); top: 22px; left: 4px; }

/* === Fil d'Ariane === */
.fil-ariane {
    text-align: center;
    line-height: 2.2; /* Espace moyen entre lignes éventuelles */
    padding: 20px;
}
.fil-ariane a {
    display: inline-block;
}

/* === Liens Utiles === */
.liens-utiles a {
    text-decoration: none;
    display: inline-block;
    margin: 5px;
}
.liens-utiles a:hover {
    text-decoration: underline;
}

/* === Responsive Réduction des polices === */
@media (max-width: 600px) {
    h1 { font-size: 1.8em !important; }
    h2 { font-size: 1.4em !important; }
    h3 { font-size: 1.2em !important; }
}